#import "../tpl.typ": conf
#show: doc => conf(
  [Table 表格],
  doc
)

= 表格

要想学会使用表格，建议从表格指南 @table-guide 开始。

== 基础表格

使用 `table` 函数创建基础表格，它至少需要知道以下内容：

- 表格的列数 `columns`
- 每个单元格的内容

比如，你想创建一个饼干成分表的表格：

```typst
#table(
  columns: 2,
  [*Amount*], [*Ingredient*],
  [360g], [Baking flour],
  [250g], [Butter (room temp.)],
  [150g], [Brown sugar],
  [100g], [Cane sugar],
  [100g], [70% cocoa chocolate],
  [100g], [35-40% cocoa chocolate],
  [2], [Eggs],
  [Pinch], [Salt],
  [Drizzle], [Vanilla extract],
)
```

#figure(
  table(
    columns: 2,
    [*Amount*], [*Ingredient*],
    [360g], [Baking flour], // 烘焙粉
    [250g], [Butter (room temp.)],
    [150g], [Brown sugar], // 红糖
    [100g], [Cane sugar], // 蔗糖
    [100g], [70% cocoa chocolate],
    [100g], [35-40% cocoa chocolate],
    [2], [Eggs],
    [Pinch], [Salt],
    [Drizzle], [Vanilla extract], // 香精
  ),
  caption: [两栏基础表格]
)

建议把表头放在 `table.header` 函数内，尽管外观没有变化，但未来的 Typst 会为它添加无障碍元数据。

```typst
#table(
  columns: 2,
  table.header[*Amount*][*Ingredient*],
  [360g], [Baking flour],
  ...
)
```

#figure(
  table(
    columns: 2,
    table.header[*Amount*][*Ingredient*],
    [360g], [Baking flour], // 烘焙粉
    [250g], [Butter (room temp.)],
    [150g], [Brown sugar], // 红糖
    [100g], [Cane sugar], // 蔗糖
    [100g], [70% cocoa chocolate],
    [100g], [35-40% cocoa chocolate],
    [2], [Eggs],
    [Pinch], [Salt],
    [Drizzle], [Vanilla extract], // 香精
  ),
  caption: [使用 `table.header` 表头的表格]
)


#bibliography("refs.yml", title: "参考资料")